Add (non-atomic) support for GRUB2 + UEFI
authorColin Walters <walters@verbum.org>
Fri, 17 Oct 2014 15:46:52 +0000 (11:46 -0400)
committerColin Walters <walters@verbum.org>
Fri, 24 Oct 2014 01:42:30 +0000 (21:42 -0400)
commit0c89abee6d1142b6b20ba2539eceece2cbd3b9eb
treeee3bc45dc862651b54345050d108cafa7458890e
parentb43ce2329e1a09ffe2d103855702a1e76348522b
Add (non-atomic) support for GRUB2 + UEFI

We need basic support for UEFI - many newer servers don't support
BIOS compatibility mode anymore.

However, this patch only implements non-atomic because UEFI is FAT, and
we can't do the previous design for OSTree of atomic swap of
/boot/loader.

The Fedora/RHEL UEFI layout has the kernels on a "real" /boot
partition, and /boot/efi/EFI/$vendor just holds the grub2 UEFI binary
and grub.cfg.

Following this, /boot/loader is still on the OS boot partition, and we
still atomically swap it.  This potentially paves the way to atomic
upgrades in the future.

https://bugzilla.gnome.org/show_bug.cgi?id=724246
src/libostree/ostree-bootloader-grub2.c
src/libostree/ostree-bootloader-grub2.h
src/libostree/ostree-bootloader-syslinux.c
src/libostree/ostree-bootloader-uboot.c
src/libostree/ostree-bootloader.c
src/libostree/ostree-bootloader.h
src/libostree/ostree-cmdprivate.c
src/libostree/ostree-sysroot-deploy.c
src/libostree/ostree-sysroot-private.h
src/libostree/ostree-sysroot.c